package com.opentae.data.mall.examples;

import com.opentae.core.mybatis.SgExample;
import com.opentae.core.mybatis.example.EntityColumn;
import com.opentae.core.mybatis.example.EntityTable;
import com.opentae.core.mybatis.mapperhelper.EntityHelper;
import com.opentae.data.mall.beans.CodeMap;

import java.util.*;
public class CodeMapExample extends SgExample<CodeMapExample.Criteria> {
    public static final Class<CodeMap> beanClass = CodeMap.class;
    public static final EntityTable entityTable = EntityHelper.getEntityTable(beanClass);
    public static EntityColumn inviteCode;
    public static EntityColumn mallUserId;
    public static EntityColumn mapId;
    static {
        Set<EntityColumn> columns = entityTable.getEntityClassColumns();
        Map<String, EntityColumn> listMap = new HashMap<>();
        for (EntityColumn column : columns) {
            listMap.put(column.getProperty(), column);
        }
        inviteCode = listMap.get("inviteCode");
        mallUserId = listMap.get("mallUserId");
        mapId = listMap.get("mapId");
        }

    public CodeMapExample() {
        this.setTableAlias(entityTable.getName());
    }

    @Override
    public EntityTable getEntityTable() {
        return entityTable;
    }

    @Override
    protected CodeMapExample.Criteria createCriteriaInternal() {
        return new CodeMapExample.Criteria(this);
    }

    public static class Criteria extends SgExample.GeneratedCriteria<Criteria> {
        protected Criteria(SgExample example) {
            super(example);
        }

        public CodeMapExample.Criteria andInviteCodeIsNull() {
            return isNull(inviteCode);
        }

        public CodeMapExample.Criteria andInviteCodeIsNotNull() {
            return isNotNull(inviteCode);
        }

        public CodeMapExample.Criteria andInviteCodeEqualTo(String value) {
            return equalTo(inviteCode, value);
        }

        public CodeMapExample.Criteria andInviteCodeNotEqualTo(String value) {
            return notEqualTo(inviteCode, value);
        }

        public CodeMapExample.Criteria andInviteCodeGreaterThan(String value) {
            return greaterThan(inviteCode, value);
        }

        public CodeMapExample.Criteria andInviteCodeGreaterThanOrEqualTo(String value) {
            return greaterThanOrEqualTo(inviteCode, value);
        }

        public CodeMapExample.Criteria andInviteCodeLessThan(String value) {
            return lessThan(inviteCode, value);
        }

        public CodeMapExample.Criteria andInviteCodeLessThanOrEqualTo(String value) {
            return lessThanOrEqualTo(inviteCode, value);
        }

        public CodeMapExample.Criteria andInviteCodeLike(String value) {
            return like(inviteCode, value);
        }

        public CodeMapExample.Criteria andInviteCodeNotLike(String value) {
            return notLike(inviteCode, value);
        }

        public CodeMapExample.Criteria andInviteCodeIn(List<String> values) {
            return in(inviteCode, values);
        }

        public CodeMapExample.Criteria andInviteCodeNotIn(List<String> values) {
            return notIn(inviteCode, values);
        }

        public CodeMapExample.Criteria andInviteCodeBetween(String value1, String value2) {
            return between(inviteCode, value1, value2);
        }

        public CodeMapExample.Criteria andInviteCodeNotBetween(String value1, String value2) {
            return notBetween(inviteCode, value1, value2);
        }
        public CodeMapExample.Criteria andMallUserIdIsNull() {
            return isNull(mallUserId);
        }

        public CodeMapExample.Criteria andMallUserIdIsNotNull() {
            return isNotNull(mallUserId);
        }

        public CodeMapExample.Criteria andMallUserIdEqualTo(Long value) {
            return equalTo(mallUserId, value);
        }

        public CodeMapExample.Criteria andMallUserIdNotEqualTo(Long value) {
            return notEqualTo(mallUserId, value);
        }

        public CodeMapExample.Criteria andMallUserIdGreaterThan(Long value) {
            return greaterThan(mallUserId, value);
        }

        public CodeMapExample.Criteria andMallUserIdGreaterThanOrEqualTo(Long value) {
            return greaterThanOrEqualTo(mallUserId, value);
        }

        public CodeMapExample.Criteria andMallUserIdLessThan(Long value) {
            return lessThan(mallUserId, value);
        }

        public CodeMapExample.Criteria andMallUserIdLessThanOrEqualTo(Long value) {
            return lessThanOrEqualTo(mallUserId, value);
        }

        public CodeMapExample.Criteria andMallUserIdIn(List<Long> values) {
            return in(mallUserId, values);
        }

        public CodeMapExample.Criteria andMallUserIdNotIn(List<Long> values) {
            return notIn(mallUserId, values);
        }

        public CodeMapExample.Criteria andMallUserIdBetween(Long value1, Long value2) {
            return between(mallUserId, value1, value2);
        }

        public CodeMapExample.Criteria andMallUserIdNotBetween(Long value1, Long value2) {
            return notBetween(mallUserId, value1, value2);
        }
        public CodeMapExample.Criteria andMapIdIsNull() {
            return isNull(mapId);
        }

        public CodeMapExample.Criteria andMapIdIsNotNull() {
            return isNotNull(mapId);
        }

        public CodeMapExample.Criteria andMapIdEqualTo(Long value) {
            return equalTo(mapId, value);
        }

        public CodeMapExample.Criteria andMapIdNotEqualTo(Long value) {
            return notEqualTo(mapId, value);
        }

        public CodeMapExample.Criteria andMapIdGreaterThan(Long value) {
            return greaterThan(mapId, value);
        }

        public CodeMapExample.Criteria andMapIdGreaterThanOrEqualTo(Long value) {
            return greaterThanOrEqualTo(mapId, value);
        }

        public CodeMapExample.Criteria andMapIdLessThan(Long value) {
            return lessThan(mapId, value);
        }

        public CodeMapExample.Criteria andMapIdLessThanOrEqualTo(Long value) {
            return lessThanOrEqualTo(mapId, value);
        }

        public CodeMapExample.Criteria andMapIdIn(List<Long> values) {
            return in(mapId, values);
        }

        public CodeMapExample.Criteria andMapIdNotIn(List<Long> values) {
            return notIn(mapId, values);
        }

        public CodeMapExample.Criteria andMapIdBetween(Long value1, Long value2) {
            return between(mapId, value1, value2);
        }

        public CodeMapExample.Criteria andMapIdNotBetween(Long value1, Long value2) {
            return notBetween(mapId, value1, value2);
        }
    }
}